package work03;

public class Demo {
    public static void main(String[] args) {
            Outer.Inner obj=new Outer().new Inner();//成员类对象创建格式   外部类.内部类 对象名=new 外部类名.new内部类名;
obj.show();//对象名.方法名
    }
    static class Outer{

        public int number = 10;

        class Inner{
            public int number = 20;
            public void show(){
                int number =30;
                System.out.println(number);  //根据就近原则 此处输出的是方法中的变量
                System.out.println(this.number);//因为前面有this.所以此处调用的是本类中的成员变量
                System.out.println(Outer.this.number);//因为前方有外部类名  所以调用的是外部类的成员变量
            }
        }
    }
}
